The invention relates generally to computer systems, and deals more particularly with a technique to automatically build a server.
Computer servers are widely used today, either as an independent server or part of a cluster of servers. Servers can be coupled to client workstations via a wide variety of networks such as LAN, WAN, token ring, intranet, internet, etc. Such coupling can use a wide variety of communication protocols such as TCP/IP,UDP and SMTP. Servers can perform a variety of function for the clients, such as management of data, Web Services, User Authentication and Process Messaging. Servers are clustered to pool their resources for the clients. This can be done for load balancing. Typically, a load balancing program is used to assign a server to each work request based on availability of the server. Clustering of servers also provides fault tolerance because other servers in the cluster are available if one fails.
A server must be “built” before it can be used alone or as part of a cluster. This “building” requires some or all of the following activities:
a) loading the requisite operating system and applications,
b) loading parameters into the applications,
c) assigning IP addresses,
D) assigning cluster topology,
E) assigning distributed database parameters,
F) assigning distributed file system parameters, and
G) assigning Distributed Computing Environment Security/Authentication parameters.
Currently, a systems administrator builds the server. The content of the server is based on choices made by the systems administrator (based on the customer's perceived needs) and the customer itself. This building process is time consuming, and prone to human error.
Accordingly, an object of the present invention is to automate the process of building a server.